The present invention generally pertains to data security systems. More particularly, the present invention pertains to methods for storing sensitive data in a database.
Many software applications and services depend on the security of a central database. For example, computing environments are known wherein multiple installations of a software application are provided with simultaneous access to sensitive data stored in a central database. In one specific example, it is common for retail management software applications to be installed on multiple computers connected by a Local Access Network (LAN) that operate in conjunction with a central database that contains sensitive data.
When access to a central database is shared among multiple application installations, there is a threat that users other than application operators will access the central database to misuse or compromise sensitive data. Applications are generally not the only way of connecting to a database. In many cases, it is theoretically possible to access the database using relatively standard tools.
Accordingly, it becomes important that access to sensitive data stored in a central database be reserved for authorized users, for example, users who can demonstrate proper authentication credentials. It is also important that collections of authentication credentials associated with authorized users be secured from unauthorized tampering.
Even for authorized application users, it can be desirable for a system to be flexible enough to support a distribution of access rights based on the needs and security policies of a given application host. For example, it can be desirable for a system to enable certain predetermined access privileges to be reserved for certain user accounts, for certain user roles, or otherwise distributed. Providing database security without sacrificing data access flexibility is becoming an increasingly important consideration.
Many of the current database security solutions are implemented primarily on a user interface level. Many solutions involve some form of password protection wherein passwords are stored in an open text format, usually in storage such as a datastore, database or password file, making them particularly susceptible to being accessed and misused. In many cases, at least a second-line of defense is needed to enhance data security.